/*
 *所有关于Complaint类的业务代码应在此处编写
*可使用repository.调用常用方法，获取EF/Dapper等信息
*如果需要事务请使用repository.DbContextBeginTransaction
*也可使用DBServerProvider.手动获取数据库相关信息
*用户信息、权限、角色等使用UserContext.Current操作
*ComplaintService对增、删、改查、导入、导出、审核业务代码扩展参照ServiceFunFilter
*/
using Microsoft.Extensions.DependencyInjection;
using Microsoft.AspNetCore.Http;
using GuXin.Business.IRepositories;
using GuXin.Entity.DomainModels;
using GuXin.Core.Utilities;
using System.Collections.Generic;
using System;
using GuXin.Core.Extensions;

namespace GuXin.Business.Services
{
    public partial class ComplaintService
    {
        private readonly IHttpContextAccessor _httpContextAccessor;
        private readonly IComplaintRepository _repository;//访问数据库

        [ActivatorUtilitiesConstructor]
        public ComplaintService(
            IComplaintRepository dbRepository,
            IHttpContextAccessor httpContextAccessor
            )
        : base(dbRepository)
        {
            _httpContextAccessor = httpContextAccessor;
            _repository = dbRepository;
            //多租户会用到这init代码，其他情况可以不用
            //base.Init(dbRepository);
        }
        public WebResponseContent Post(Complaint complaint)
        {
            return AddEntity(complaint.SetCreateDefaultVal());
        }
        //public WebResponseContent PostFile(Complaint complaint, List<IFormFile> files)
        //{
        //    WebResponseContent content = WebResponseContent.Instance.OK();
        //    if (files.Count > 0)
        //    {
        //        content = Upload(files, "Complaint/" + DateTime.Now.ToString("yyyyMM"));
        //        List<string> pics = new List<string>();
        //        files.ForEach(m => pics.Add(content.Data.ToString() + m.FileName));
        //        complaint.Pics = string.Join(";", pics);
        //    }
        //    return AddEntity(complaint.SetCreateDefaultVal());
        //}
    }
}
